#define _CRT_SECURE_NO_WARNINGS 1
//TEST
//1.主函数,c语言必须有主函数,main("函数名") ,int-整形
//还是py简单
/*这是多行注释
  可以有很多行*/

#include<stdio.h>

// int main()
// {
//     printf("hello,,world \nmy name is Ruri");//输出字符串只能用"" 不能用''
//     return 0;
// }

int Jc(int i)//计算 i 的阶乘
{
  int jc=1;
  while (i>0)
  {
   // scanf("%d",&i);
    jc *=i;
    i -=1;
  }
  return jc;
}


// int main()
// {
//   int j;
//   int sum=0;
//   //计算1到10的阶乘的和
//   for (j=1;j<=10;j++)
//   {
//     sum += Jc(j);//调用函数

//   }
//   printf("%d",sum);
//   return 0;
// }


int Jceasy(int n)//更简单的多个阶乘
{
  int i;
  int ret=1;
  int sum=0;
  for (i =1;i<=n;i++)
  {
    ret *=i;
    sum +=ret;
  }
  return sum;
}

// int main()
// {
//   printf("%d",Jceasy(10));
//   return 0;
// }



//取x在v中的位置
//折半查找/二分查找法  只用log2(n)次
int main()
{
  int x;

  scanf("%d",&x);

  int v[] ={1,2,3,4,5,6,7,8,9,10};//数组按大小排序好
  int sz= sizeof(v)/ sizeof(v[0]);//数组元素个数

  int left=0;
  int right =sz-1;

  if(x>v[right])
  {
    printf("没有");
  }

  while(left<=right)
  {
    int mid =(left+right)/2;
    if (v[mid] <x)
    {
      left =mid+1;
    }
    else if (v[mid]>x)
    {
      right =mid-1;
    }
    else
    {
      printf("找到了!!!下标是%d\n",mid);
      break;
    }
  }

  return 0;
}
